Control system with filtered dead zone

ABSTRACT

A method of operating a control device having a setpoint value, an error signal, and a control output is disclosed. The error signal is representative of a difference between a controlled variable and the setpoint value, the control output operable to affect the controlled variable. The method includes generating the control output based at least in part on the error signal and holding the control output at a held value independent of the error signal when the error signal is within a dead zone. The method also includes causing an integrating portion within the control device to track the error signal and the held value when the error signal is within the dead zone.

This application claims the benefit of U.S. Provisional PatentApplication Ser. Nos. 60/414,138, filed Sep. 27, 2002, and 60/414,220,filed Sep. 27, 2002 which is incorporated herein by reference.

FIELD OF THE INVENTION

The present invention relates to control systems, and more particularly,to control systems having a dead zone in which the output is imperviousto minimal changes in input signal.

BACKGROUND OF THE INVENTION

Closed loop control systems are used in a variety of processes,including, by way of example, heating, venting and air conditioning(“HVAC”) applications. The purpose of such control systems is to controla process variable value x so that it is substantially equal to asetpoint w. If the setpoint w changes, then the control system endeavorsto change the process variable x in response thereto.

By way of example, consider a setpoint T_(W) identifying a desiredtemperature. The control system may control the operation of a heatingvent or the flow of hot water to a heating coil in order to control theactual temperature represented as a process variable T_(X). If theactual temperature T_(X) differs from the setpoint T_(W), then an errorsignal e is provided to a controller within the control system. Thecontroller then acts upon the error signal e to determine a controlsignal to generate. The controller, as is known in the art, may employ atransfer function to generate the control signal based on the errorsignal. The transfer function may incorporate integration, derivationand proportional scaling of the error signal in an effort to create acontrol system that provides a balanced control of the actualtemperature T_(X).

More specifically, because a control system cannot change the processvariable instantaneously as a function of the control signal output,controllers employ sophisticated transfer functions to avoid excessiveoscillations in response to changes in setpoint. For example, consider asituation in which setpoint temperature in a room of a building T_(W) is20° C. Assume also that the sensed temperature T_(X) is 20° C. in steadystate. If the setpoint temperature T_(W) is changed from 20° C. to 21.3°C., then the control system may control a process, for example, the flowof hot water through a heating coil, in order to raise the temperatureT_(X). The flow of hot water through the heating coil causes the sensedtemperature T_(X) to slowly rise. Once the ambient or sensed temperatureT_(X) reaches 21.3° C., the control system may decrease or stop the flowof hot water to the register. However, the hot water within the registerwill continue to heat because it cannot be cooled instantaneously. Thus,the temperature T_(X) may exceed the set point. Because the temperatureprocess variable exceeds the set point, the control system may turn offthe flow of hot water completely. After some time, the temperature wouldcool to the desired 21.3° C. However, the temperature would continue tofall below 21.3° C. The control system may again cause hot water to flowto bring the temperature back to 21.3° C. but it takes some time for theheating coil to warm up and generate heat. The above describedtemperature oscillations may continue indefinitely if the control systemis not properly tuned. Accordingly, the transfer function is typicallychosen such that it reduces or eliminates the possibility of excessiveoscillations in the control system.

As discussed above, the transfer functions of closed loop controlsystems employ known techniques to manipulation of the error signalbefore calculating the control output. For example, many control systemsemploy a proportional calculation in which only a fraction of everyerror signal is incorporated into the calculation of the control output.Proportional control thus tempers or reduces the effect anyinstantaneous error signal value will have on the output of the system,thereby reducing the potential for large oscillations. One popular formof controller, a PID controller, employs proportional, integrated anddifferentiated aspects of the error signal to formulate the controloutput. In a PID controller, the error signal is provided to aproportional circuit, a differentiating circuit, and an integratingcircuit. The outputs of the circuits are combined to help generate thecontrol output. The use of such differentiated and integrated aspects ofthe error signal further improves the response of the control system.

In any event, one issue that arises in control systems is their behaviorwhen the error signal is very close to zero. More specifically, becauseof many factors, it is difficult to achieve absolutely zero error incontrol systems, particularly in large control systems such as HVACcontrol systems. These factors include noise and/or non-linearitiesgenerated by the mechanical equipment, the external environment, andother sources. The noise and nonlinearities introduce non-zero elementsinto the error signal, even though the nominal (noise free) error signalis zero. These non-zero elements can, without remediation, cause thecontrol system to unnecessarily change its output signal.

Changing a control output typically causes actuation of a mechanicaldevice, for example, movement of a heating vent, opening or closing of avalve, or change in fan speed. Thus, for example, a control output mayfrequently cause a heating vent to open and close in attempts to achievezero error. Unnecessary actuation of mechanical devices typicallyshortens their life cycle. Accordingly, the difficulty in achieving zeroerror in control systems such as HVAC systems undesirably results inshorter life cycles for elements of the system.

In order to reduce the effects of noise and non-linearities, manycontrol systems employ dead zone or dead zone operation. Dead zoneoperation typically involves a non-linear dead zone filter thatgenerates an output value of zero if the error signal is within apredetermined range of zero. As a result of dead zone operation, controlsystems do not have to achieve zero error in order to avoid excessactuation of controlled devices. Thus, noise signals that couldotherwise trigger actuation of a controlled device are filtered out bythe dead zone filter. An example of a dead zone filter is discussed inU.S. Pat. No. 5,768,121.

The dead zone filtering of error signals in controllers has gainedwidespread acceptance. However, an issue with prior art dead zoneoperation is that the dead zone filter did not distinguish betweensteady state operation of the control system and transitional operationof the control system. In particular, when the control system hasachieved a steady state near-zero error, then the dead zone operationprovides the advantage of reducing or eliminating unnecessary operationof actuators due to noise on the error signal. However, when the controlsystem is oscillating in an attempt to settle into steady stateoperation, the error signal may pass through the dead zonetransitionally. In such a case, the dead zone operation does not provideany significant advantage, and indeed, introduces non-linearity into thecontroller which makes it difficult for the controller to settle.

Accordingly, there is an additional need for a controller that providesdead zone operation to reduce noise at steady state, but which does notintroduce non-linearities into the controller when the controller is notat steady state.

SUMMARY OF THE INVENTION

The present invention addresses the above concerns, as well as others,by providing a method and arrangement for use in a control system inwhich the controlled output of a controller is held at a constant valuewhen the error is in a dead zone. In addition, the integrating portionof the controller tracks the actual error signal to the held output. Asa consequence, the controller will be in an appropriate state when theerror signal emerges from the dead zone and the controller resumesgenerating the control output as a function of the error signal.

A first embodiment of the invention is a method of operating a controldevice having a setpoint value, an error signal, and a control outputsignal. The error signal is representative of a difference between aprocess variable and the setpoint value, and the control output signalis operable to affect the process variable. The method includesgenerating the control output signal based at least in part on the errorsignal. The method further includes filtering the error signal togenerate a filtered error signal and generating the control outputsignal independent of the error signal when the filtered error signal iswithin a dead zone.

Another embodiment of the invention is a control system that includes anactuator and a controller. The actuator has a first input and isoperable to effectuate a process in response to the first input. Thecontroller is operably coupled to receive the process variable and a setpoint value, the process variable representative of an output of theprocess. The controller is further operably connected to provide acontrol output to the first input of the actuator. The controller isoperable to generate the control output signal based at least in part onthe error signal, filter the error signal to generate a filtered errorsignal, and generate the control output signal independent of the errorsignal when the filtered error signal is within a dead zone.

It will be appreciated that the above described features and advantages,as well as others, will become more readily apparent to those ofordinary skill in the art by reference to the following detaileddescription and accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a schematic block diagram of a control system thatincorporates aspects of the present invention;

FIG. 1 a shows a first exemplary embodiment of the control system ofFIG. 1;

FIG. 1 b shows a second exemplary embodiment of the control system ofFIG. 1;

FIG. 2 shows a timing diagram of various signals of the control systemin response to a step function;

FIG. 3 shows a schematic block diagram of an exemplary controller thatmay be used in the control system of FIG. 1;

FIG. 4 shows a schematic block diagram of a first exemplary embodimentof an error signal filter that may be used in the controller of FIG. 3;and

FIG. 5 shows a schematic block diagram of a second exemplary embodimentof an error signal filter that may be used in the controller of FIG. 3.

DETAILED DESCRIPTION

FIG. 1 shows a schematic diagram of a control system 10 according to thepresent invention. The control system 10 includes a controller 12, anactuator 14, and a sensor 16. In general, the control system 10 operatesto attempt to control a process variable x, such as temperature, flow,position or the like, in accordance with a set point value w, whichrepresents a desired temperature, flow, position or the like. By way ofexample, the set point w may represent a desired temperature, and theprocess variable x may represent the actual measured temperature. Thecontrol system 10 operates to control one or more physical devices, viathe actuator 14, to cause the process variable x to have a value thatcorresponds to the set point value w.

Referring again to the general implementation of FIG. 1, the actuator 14has a first input 14 a and is operable to affect a process in responseto signals received at the first input 14 a. By way of example, theactuator 14 may be the actuator of a water valve in a heating coil, oran actuator of a vent damper. The affected process may be an air flowprocess, heating process, water flow process, or even a non-HVAC relatedprocess. The actuator 14 is the physical mechanism that causes thechange in the process variable x in response to a control outputprovided by the controller 12.

The sensor 16 is a device that obtains the process variable value. Forexample, the sensor 16 may be a temperature sensor that obtains aprocess variable value in the form of a temperature reading. In otherexamples, the sensor 16 may be a flow sensor, or merely a positionsensor in the case of a vent damper. In any event, the sensor 16provides a measure of the condition or variable that the control system10 is intended to control.

The controller 12 is a device or circuit that is coupled to receive theprocess variable value x, the set point value w, and generate thecontrol output y therefrom. The controller 12 may suitably be aprocessor, a discrete digital circuit, or a combination or one or moreprocessing devices and digital circuits. The controller 12 may furthercontain analog circuitry that receives inputs and generates outputs,including A/D and D/A converters. Such controllers are well known.

FIGS. 1 a and 1 b illustrate two nonlimiting implementations of thecontrol system 10 of FIG. 1. FIG. 1 a shows a first exemplary embodimentof the control system 10 in which the process under control is the airflow through a duct or conduit 72. The controller 12′ is coupled toreceive a process variable x′ representative of measured air flow from apressure sensor 16′. To this end, the pressure sensor 16′ includes aprobe 74 disposed within the conduit 72 at which point the air flow ismeasured. The controller 12′ is further operably coupled to receive aset point value w′ that identifies a desired air flow value. The setpoint value w′ may be generated by an operator, or by another controlsystem, not shown.

In any event, the controller 12′ of FIG. 1 a attempts cause the air flowmeasured by the pressure sensor 16′ to correspond to the set point valuew′. To this end, the controller 12′ may suitably cause an increase ordecrease in air flow by causing a damper 76 disposed within the conduit72 to open or close to a greater extent. The controller 12′ controls theposition of the damper 76 by providing a control output value y′ to anactuator 14′ that is operable to mechanically adjust the position of thedamper 76.

In general operation, if the set point w′ exceeds the measured air flowx′, then the controller 12′ generally provides a set of control outputsignals y′ to the actuator 16′ that cause the actuator 16′ to furtheropen the damper 76. Further opening the damper 76 should increase theair flow, thereby increasing x′. Contrariwise, if the measurement airflow x′ exceeds the set point w′, the controller 12′ generally providesa set of control output signals y′ to the actuator 16′ that cause theactuator 16′ to further close the damper 76, thereby reducing x′.

FIG. 1 b shows another exemplary embodiment of the control system 10 ofFIG. 1. In the embodiment of FIG. 1 b, the process under control is thetemperature within an area of a building. The controller 12″ is coupledto receive a process variable x″ representative of measured temperaturefrom a temperature sensor 16″. The temperature sensor 16″ includes aprobe 84 disposed within the area of the building. The controller 12″ isfurther operably coupled to receive a set point value w″ that identifiesa desired temperature value. The set point value w″ may be generated bymanual adjustment of a thermostat, not shown or by another system, notshown.

In any event, the controller 12″ of FIG. 1 b attempts cause thetemperature measured by the temperature sensor 16″ to correspond to theset point value w″. To this end, the controller 12″ may suitably causean increase or decrease in temperature by causing an increase ordecrease in hot water passing through a heating coil 86 that is disposedin a heat exchange relationship with the room. The controller 12″controls the hot water flow within the heating coil 86 by providing acontrol output value y″ to an actuator 14″ that is operable tomechanically adjust a valve 88, which in turn regulates the flow of hotwater through the heating coil 86.

The above examples described in connection with FIGS. 1 a and 1 billustrate two of many possible environments in which the controller 12according to the present invention may be employed.

Returning to the generalized description of FIG. 1, the controller 12includes a summation device or the like, (see e.g. FIG. 3), thatgenerates an error signal e based on the difference between the processvariable value x and the set point value w. The controller 12 furtheroperates to generate the control output value y based on the errorsignal e using a closed loop control transfer function. Preferably, thecontroller 12 employs proportional, integral, and derivative (“PID”)control techniques, proportional and integral (“PI”) techniques, orother control techniques that involve integration. The use of controltechniques that involve integration generally show advantageous trackingand converging characteristics, as is known in the art. In any event,the transfer function of the controller 12 endeavors to control thecontrol output value y in such a manner as to ultimately reduce theerror signal e.

The controller 12 is further operable to generate a held output value atits control output value y when the error signal e is within a deadzone. The held output value is a temporarily constant value that is notupdated in response to changes in the error signal e. As a result ofholding the control output value while the error signal is within thedead zone, excessive unnecessary operation of the actuator 14 may beavoided, as discussed further below.

More specifically, the dead zone may suitably be defined as a range oferror signal values that fall between positive and negative thresholds.Thus, if the error signal is below a positive threshold or above anegative threshold, then the error signal is in the dead zone. Thepositive and negative thresholds are typically relatively close to zero.By way of example, if the error signal e is representative of atemperature error, then a particular control system may define the deadzone as ±0.2 degrees Celsius. The dead zone should be chosen such thatthe overall goal of the control process is not defeated. For example, ifthe control system is an HVAC space temperature control system, a deadzone of ±3 degrees Celsius would be too large and defeat the goal ofproviding a comfortable environmental temperature. In addition, the deadzone is preferably at least larger than the noise floor of the system.Those of ordinary skill in the art may readily determine an appropriatedead zone for their implementation.

In accordance with one aspect of the invention, the controller 12further performs a filtering operation on the error signal e to obtain afiltered error signal prior to determining whether the error signal iswithin the dead zone. In such a case, if the filtered error signal iswithin the dead zone (i.e. within a predetermined range of zero), thenthe controller 12 generates the held control output value. If, however,the filtered error signal is outside the dead zone, then the controller12 will continue to generate the control output value based on the errorsignal e, even if the instantaneous error signal is within the dead zonerange.

Thus, the controller 12 only holds the control output value if thefiltered error signal is near zero. As a result, the controller 12effectively suppresses dead zone operation when the error signal ismerely transitioning through the dead zone in a larger oscillatoryswing. As discussed further above, an error signal may be near zero atany particular instant either because the controller 12 has settled withnearly zero error, or because the error signal is in transition andpassing through zero.

When the error signal is merely transitioning through zero, the filterederror signal in the controller 12 remains outside the dead zonethresholds. To this end, the filter may suitably be embodied as a lowpass filter, such as a filter that calculates a moving average. Examplesof such filters are discussed below in connection with FIGS. 3, 4 and 5.

The use of the filtered error signal provides the advantage ofdistinguishing between circumstances in which the error signal is merelytransitioning through zero and circumstances in which the error signalis settling at or near zero. This determination is used to inhibitunnecessarily implementation of dead zone operation (i.e. holding of thecontrol output variable). As discussed above, dead zone operation duringcircumstances in which the error signal is in transition introduces anundesirable non-linearity into the control function of the controller12. By contrast, such non-linearity is tolerable when the controller 12has settled at or near zero error.

By way of example, FIG. 2 shows an exemplary timing diagram of a stepinput response of a control system. The set point w is illustrated as afunction of time by the step function curve 59. The process variablevalue x is shown as a function of time by the curve 58. The error signale at any point in time is represented as the distance between theprocess variable curve 58 and the set point curve 59. Accordingly, thedead zone thresholds are illustrated as straight lines 50 and 54, whichare located on either side of the set point curve 59.

In FIG. 2, the controller 12 undergoes a step input change in the setpoint w at a time T₁. For example, a temperature set point may have beenchanged from 21° C. to 24° C. The process variable value curve 58 showsthe typical settling oscillations of a process variable value after astep change in set point.

In particular, a first portion of the curve 58 shows the processvariable value x passing through the dead zone in a first positivetransition 60. Even though the error signal is within the dead zoneduring the first positive transition 60, it does not represent merenoise or some other insignificant input to the system, but ratherrepresents the intended operation of the control algorithm. In otherwords, the controller 12 is still attempting to converge or settle.Thus, there is no real advantage to isolating the output of thecontroller 12 from the error signal via dead zone operation. Indeed,isolating the output in such a case undesirably introduces nonlinearbehavior at a critical point of the operation of the controller 12.

The second part of the curve shows the error signal e after thecontroller 12 has converged or settled. In this settled portion 62 ofthe curve, the small error signals are more likely to result from systemnoise. Accordingly, it is advantageous to reduce or eliminate theirinfluence on the controller 12.

Moreover, even if the small error signals are not the result of systemnoise, it may still be advantageous to suppress the influence of suchsmall errors on the operation of the controller 12. For example, if theset point temperature is 21.0° C. and the ambient temperature is 21.2°C., then it is not necessarily cost beneficial to operate a vent orvalve actuator to effect such a small change in temperature.

In any event, once the controller 12 has settled as shown in the settledportion 62 of the curve 58, the dead zone operation of the controller 12operates to isolate the control output from the error signal. Thecontroller 12 continues in dead zone operation until the filtered errorsignal subsequently transitions beyond the dead zone thresholds.

As discussed above, to inhibit dead zone operation during transition ofthe error signal through zero, the preferred embodiment of thecontroller 12 employs a filter, not shown, for filtering the errorsignal before determining whether the error signal is adequately settlednear zero to justify holding the control output value. The filter maysuitably be a low pass filter, which is capable of distinguishingtransitional signal values, such as those in the positive transition 60of FIG. 2, from near constant low error signal values, such as those inthe settled portion 62 of FIG. 2. Nonlimiting examples of suitablefilters are shown in FIGS. 4 and 5 and are discussed below.

In accordance with another aspect of the present invention, thecontroller 12 also causes an integrating portion within the controller12 to track to the error signal and the held value when the error signalis within the dead zone. By tracking to the error signal and held value,it is meant that the integrating portion calculates its internal outputvalue based at least in part on the held value and the error signal. Tothis end, the controller 12 provides to its integrating portion both theerror signal e and the difference between the held control output and anoutput generated by the controller in response to the error signal.Further detail regarding the tracking to the error signal and the heldoutput value is provided below in connection with FIG. 3. The trackingfeature thereby ensures that the two outputs, the held control outputand the internal output value, coincide at the time that the controllerswitches back from dead zone operation to regular control operation.This is called bumpless transfer.

In particular, during dead zone operation, the error signal may benon-zero for a significant amount of time. Without tracking as describedabove, the integrator of the controller 12 would progressivelyaccumulate the non-zero error signal, resulting potentially in a highintegrating value that is unconnected to the actual output of thesystem. In such a case, when the error signal eventually emerges fromthe dead zone and the controller 12 resumes normal control operations,distorted control behavior (“bump”) results from the integrating portionbeing “unconnected”. By tracking the integrator to the error signal andthe held output signal, the controller 12 may pass smoothly from deadzone operation to normal control operations.

It will be appreciated that the controller 12 of FIG. 1 thusincorporates two related, but independently useful inventions. Oneinvention relates to the use of a filtered error signal by a closed-loopcontroller in order to suppress dead zone operation when an error signalis merely transitioning through zero. The other invention involvestracking an integrating portion of the closed loop controller to theheld output during dead zone operation to achieve a bumpless transferwhen the closed loop controller emerges out of dead zone operation. Atleast some of the benefits of employing a filtered error signal todetermine whether to commence dead zone operation may be obtained evenwithout employing tracking to achieve a bumpless transfer. Similarly, atleast some of the benefits of a bumpless transfer out of dead zoneoperation even if the determination to enter into dead zone operation isaccomplished with an unfiltered error signal, or using some other deadzone determination technique.

FIG. 3 shows an exemplary implementation of a controller 100. Thecontroller 100 is shown in block diagram form for purposes of clarity ofexposition. The block diagram of FIG. 3 may readily be implemented asdiscrete digital circuits, one or more programmed processing devices, ora combination thereof. The term circuit is used herein to describe oneor more of the functional blocks of FIG. 3. It will be understood that acircuit as used herein may be a select group of elements of a softwareprogram or algorithm being executed by a processing device, acombination of analog electrical elements, a combination of digitaldevices, or a combination of any of the above.

In the exemplary embodiment described herein, however, the controller100 is a processing device and the functional blocks or circuitsrepresent software operations that are executed by the processingdevice. In general, the various input signals are provided as discretedigital samples.

Referring now to FIG. 3, the controller 100 includes a PID controlmodule 102, a tracking circuit 104, and a filter 106. The PID controlmodule 102 in general is operable to perform normal PID controlfunctions, and namely, generating a controlled output y3 in response toan error signal generated from a process variable value x and a setpoint value w. To this end, the PID control module 102 includes aproportional portion 110, an integrating portion 112, and a derivativeportion 114. Each of the portions 110, 112 and 114 is configured toreceive the set point value w and the process variable value x.Generally, each of the portions 110, 112 and 114 determines an errorsignal based on the difference between w and x, and further generates aportion of the controlled output y3 based on the determined errorsignals, as will be discussed below in further detail. The outputs ofthe portions 110, 112 and 114 are further connected to provide theirportions of the controlled output to the summation devices 116 and 118.The summation devices 116 and 118 then combine the portions, along witha bias factor, to generate the controlled output y3.

The controlled output y3, however, does not necessarily constitute theoverall output y of the controller 100. The PID control module 102includes various output configuration elements, for example, a sampleand hold element 174, a manual override switch 176, and an enable switch178. Such elements allow for selective replacement of the PIDcontrol-generated value y3 with other values. For example, the sampleand hold element 174 is configured to hold the control output y at aparticular value, thus overriding the generated value y3 from updatingthe control output y. Thus, the sample and hold element 174 is used toimplement dead zone operation, as will be discussed further below.

Referring now to the specific architecture of the proportional portion110 of the in the exemplary embodiment of FIG. 3, the proportionalportion 110 includes an error summation 132, an inverter 134, and aproportional gain amplifier 136.

The error summation 132 is operably coupled to receive the set point wand the process variable value x. The error summation 132 is operable toprovide the difference between those values, the proportional errorsignal e_(p) to the inverter 134. The inverter 134 is a multiplier thatmay optionally be set to −1 to reverse the sign of e_(p) if desired.Otherwise, the inverter 134 simply passes through the non-invertedvalue. The inverter 134 provides the inverted or non-invertedproportional error signal e_(p) to the proportional gain amplifier 136.The proportional gain amplifier 136 operably multiples the scaledproportional error signal by the proportional gain kr of the controlmodule 102. The proportional gain kr, as is known in the art, definesthe extent to which the current error signal e affects the controloutput y3 of the control module 102. The output of the proportional gainamplifier 136 is the proportional portion control output yp, which isequal to e_(p)*kr. The proportional gain amplifier 136 is operablycoupled to provide the proportional portion control output yp to thesummation device 116.

Referring now to the specific architecture of the integrating portion112 of the in the exemplary embodiment of FIG. 3, the integratingportion 112 includes, an error summation 138, an inverter 140, anintegrator gain amplifier 142, a tracking input 144, an integratingsummer 146, and a delay 148. The error summation 138 is operably coupledto receive the set point w and the process variable value x. The errorsummation 138 is operable to provide the difference between thosevalues, which represents the error signal e_(i), to the inverter 140.Similar to the inverter 134, the inverter 140 optionally inverts theerror signal e_(i). The inverter 140 provides the error signal e_(i) tothe integrator gain amplifier 142. The integrator gain amplifier 142operably multiples the error signal by an integrating gain factor. Theintegrating gain factor ki in the exemplary embodiment described hereinis given by the equation:ki=kr*Ts/Ti,

where kr is the proportional gain factor discussed above, Ts is thesample time of the control module 102, and Ti is the time constant ofthe integrating portion 112. With respect to Ts, it is noted that asdiscussed above, the control module 102 is in this embodiment aprogrammed processing device that operates with digital signals w and xin the form of clocked samples. The value Ts is used to convert the timeconstant Ti such that it is converted to be in terms of time samples, asopposed to time in terms of seconds or some other absolute value. Inthis manner, the absolute time constant of the integrating portion 112is not affected by changes in clock speed of the system.

The integrating gain amplifier 142 provides the gain adjusted errorsignal e_(i)*ki to the integrating summer 146 through the tracking input144. The tracking input 144 is a summation device that adds the trackingsignal value, if any, to the gain adjusted error signal. Furtherdiscussion of the tracking signal value and its effect on theintegrating portion 112 is discussed further below.

In general, the integrating summer 146 has a first input which receivesthe gain adjusted error signal (e_(i)*ki), a second input connected to afeedback line 150, and an output connected to the delay 148. The delay148 is operable to receive a value from the integrating summer 146 andprovide that value as an output after a predetermined delay. The delaymay suitably be one sample cycle. The output of the delay 148 representsthe integrating control output yi, which is provided to the summationdevice 116 as well as the feedback line 150. The provision of the outputof the delay 148 to the feedback path 150 and thus to the integratingsummer 146 causes the integrating summer 146 to generate a runningsummation of accumulated error signal values.

Referring now to the specific architecture of the differential portion114 of the exemplary embodiment of FIG. 3, the differential portion 114includes a set point switch 152, an error summation 154, an inverter156, a differentiating summer 158, a differential amplifier 160, afeedback summation 162, a delay 164 and a differential gain amplifier166.

The set point switch 152 is an amplification block that may be usedeffectively to block the set point value w from the differential portion114. To this end, the set point switch 152 is an amplifier that may beset to provide unity gain, except when the set point is to be blockedfrom use by the differential portion 114, at which point the amplifieris set to zero. The set point adjust 152 may suitably set to zero insome cases because it is sometimes desirable to suppress changes in theset point w from effecting the operation of the differential portion114. In particular, because changes in set point w often constitutelarge abrupt changes, for example, a change in set point temperaturefrom 22° C. to 23° C., it is not desirable to process such changes inthe differential portion 114. As a consequence, it has been found thatit is desirable to base the operation of the differential portion 114solely on changes in the process variable value x.

The error summation 154 is operably coupled to receive the set point wvia the set point switch 152 and the process variable value x. The errorsummation 154 provides the error signal e_(d) as the difference betweenw and x. In the case in which the set point w is suppressed by the setpoint switch 152, then value e_(d) merely represents the processvariable x.

In any event, the error summation 154 is operable to provide thedifference between those values, the signal e_(d), to the inverter 156.Similar to the inverters 134 and 140, the inverter 156 optionallyinverts the sign of e_(d). The inverter 156 provides the error signale_(d) to a first input of the differential summer 158. The differentialsummer 158 also has an output connected to the differential amplifier160 and a second input connected to the output of the delay 164. Thedifferential amplifier 160 is connected to provide its output to thedifferential gain amplifier 166 and to a first input of the feedbacksummation 162. The second input of the feedback summation 162 isconnected to the output of the delay 164, and the output of the feedbacksummation 162 is connected to the input of the delay 164.

As is known to those of ordinary skill in the digital signal processingart, the combination of the differential summation 158, the feedbacksummation 162 and delay 164 provides a differentiating function thatgenerates as an output a value representative of the rate of change inthe samples of the adjusted error signal e_(d). The value of k of thedifferential amplifier 160 adjusts the sensitivity of thedifferentiator, and should be below 1.0.

The differential gain amplifier 166 adjusts the extent to which the rateof change value provided by the differential amplifier 160 affects theoverall control output value y3. In the embodiment described herein, thedifferential gain amplifier provides a gain kd given by the equation:kd=kr*Td/Tswhere Td is the time constant of the differentiator. As discussed above,Ts represents the sample time of the system. As a consequence, Td/Ts isequal to the time constant of the differentiator in terms of samples.

The differential gain amplifier 166 is operably connected to provide itsoutput, yd, to the summation device 118.

The calculated control output value y3 is generated by the summationdevices 116 and 118 using the outputs yi, yp and yd, and a bias value.As noted above, the proportional portion 110 and the integrating portion112 provide their output values yp and yi, respectively, to inputs ofthe summation device 116. The summation device 116 is operable togenerate an interim sum y1 thereof and is connected to provide theinterim sum to a first input of the bias input device 170. The biasinput device 170 is another summation device, and has a second inputconnected to the bias input 172 of the PID control module 102. The biasinput 172 provides the bias input value of the control module 102. Thebias input value is used to bias the response of the transfer functionas is known in the art. Those of ordinary skill in the art may readilydetermine the appropriate bias input value for their particularimplementation.

The output signal value of the bias input device 170 is provided to afirst input of the summation device 118. A second input of the summationdevice 118, as discussed above, is connected to receive yd from thedifferential gain amplifier 166 of the differential portion 114. Theoutput of the summation device 118 provides the calculated controloutput value y3, which is representative of the application of the errorsignal e (e_(p), e_(i), e_(d)) to the transfer function of the PIDcontrol module 102.

The controller 100 further includes a sample and hold block 174, anoverride switch 176, a shutoff switch 178 and an output limiter 180 thatmay alter the control output value y of the controller 100. Inparticular, the controller 100 may be characterized as having a numberof modes: normal mode, dead zone mode, manual override mode, and shutoffmode. In normal mode, the calculated control output y3 is provided asthe control output y of the controller 100. In dead zone mode, thesample and hold block 174 replaces the calculated control output y3 witha held control output value. As discussed above, such operationtemporarily disconnects the control output y from any ongoing influenceof the error signal e when the error signal e is relatively small. Inmanual override mode, the override switch 176 replaces the calculatedcontrol output y3 with a separate override input value that isdetermined external to the controller 100. The manual override modeallows for external, direct control over the actuator to which thecontroller is attached. In shutoff mode, the shutoff switch 178 replacesthe calculated control output y3 (or any override value or held value)with a predetermined constant value. Such a mode may be used to place anactuator in a neutral or off state.

The output limiter 180 operates to limit the extreme values of thecontrol output so as to avoid attempts to place an actuator in anunreachable state. In particular, the output limiter 180 places positiveand negative limits on the control output y. If the control output valueprovided to the output limiter 180 exceeds a limit, the control outputis changed such that its value is equal to, or close to, the limit thatwas exceeded.

Referring to the various output circuits in further detail, the sampleand hold block 174 is the device that generates the held control outputvalue during dead zone operation of the controller 100. In particular,the sample and hold block 174 is operable to generate a held valueresponsive to hold control signals received from the filter 106. Thefilter 106, as will be discussed below, generates a hold control signalwhen the filter 106 determines that the filtered error signal e is inthe dead zone.

To this end, the sample and hold block 174 has an input 174 a connectedto receive the calculated control output value, y3, an output 174 bconnected to generate an operating control output value, y4, and acontrol input 174 c. The control input 174 c is connected to the filter106. The sample and hold block 174 is operable to generate the value y4in response to the control input 174 c. If the control input 174 creceives a non-hold control signal from the filter 106, then the sampleand hold block 174 generates y4 by passing through the present value ofy3. In other words, y4=y3. However, if the control input 174 c receivesa hold control signal from the filter 106, then the sample and holdblock 174 holds the output y4 equal to the value of y3 at the time thehold control signal was received. Until a subsequent non-hold controlsignal is received, the sample and hold block 174 will not update thevalue of y4, even if the value of y3 changes.

The sample and hold block 174 thus provides a point at which the controloutput of the controller 100 may be isolated from the error signalduring operation in the dead zone mode. In other words, in the dead zonemode, the error signal e does not affect the output y4 because theupdates to the calculated control signal y3 do not propagate through tothe output y4.

The output 174 b of the sample and hold block 174 is operably connectedto provide the value y4 a first switched input of the override switch176. As discussed above, the override switch 176 allows for operation ofan override mode in which the control output y4 of the PID controlmodule 102 is overridden with a manual input value. The override modethereby allows for external control of an actuator, and ultimatelydisconnects the PID control module 102 from the actuator.

To this end, the override switch 176 has a second switched input isconnected to receive an override input value uman. The override switch176 is operable to generate an output value y5 that is equal to eitherthe value y4 (when not in override mode) or the value uman (when inoverride mode). The override switch 176 also includes a control inputthat receives a signal indicating whether the switch 176 should operatein override mode. In the exemplary embodiment described herein, thecontrol input is also tied to the uman input. In such a configuration,the override switch 176 only operates in override mode when the umaninput is a non-null value. Thus, the uman value is always at a nullvalue until an override value is provided.

In any event, the override switch 176 is operably connected to providethe output value y5 to the shutoff switch 178. The shutoff switch 178 isoperable to generate a control output value y6 that is equal to y5 whennot in shutoff mode. The shutoff switch 178 is also operable to generatethe control value y6 equal to a predetermined constant c when in shutoffmode. The shutoff switch 178 is operably connected to provide thecontrol output value y6 to the output limiter 180. The shutoff switch178 includes a control input connected to receive a shutoff controlsignal. In the event of receiving a shutoff control signal in thecontrol input, the shutoff switch 178 sets y6=c. Otherwise, the shutoffswitch sets y6=y5. The shutoff switch 178, unlike the override switch176, does not allow for full manual control or manipulation of thecontrol output y of the controller 100, but rather only provides theability to cause a predetermined shutoff or default value c to beprovided as the control output y6.

As discussed above, the output limiter 180 is a block that determineswhether the control output received through the shutoff switch 178 isoutside of an acceptable range. The range may be used to prevent acontrol output y that places the actuator in an unreachable state. Forexample, the control output provided to the shutoff switch 178 may be avalue that corresponds a damper being in a 110% open position. Becausethe damper cannot be opened more than 100%, the output limiter 180 wouldconvert the value representative of 110% to a value representative of arealistic maximum, for example, 100%.

Accordingly, the output limiter 180 is operable to compare y6 topredetermined thresholds. If y6 is within the predetermined threshold,then the output limiter 180 provides y6 as the control output y. If y6is not within the predetermined threshold, then the output limiter 180provides a value at or near the threshold which is exceeded by y6 as thecontrol output y. The control output y represents the output of theentire controller 100. In general, the control output y will be equal tothe calculated control output y3 of the PID control module 102 in normalmode. In dead zone mode, y is equal to the held value of y3. In overridemode, y=uman. In shutoff mode, y=c. Regardless of mode, the output valueis ranged limited to the thresholds of the output limiter 180.

The tracking circuit 104 is an exemplary embodiment of a circuit oralgorithm that allows the integrating portion 112 of the PID controlmodule 102 to track to the control output y of the controller 100 evenwhen the control output y has been isolated from the control outputvalue y3 of the PID control module 102, such as in dead zone mode oroverride mode.

To this end, the tracking circuit 104 includes a tracking combiner 184and a tracking gain 186. The tracking combiner 184 includes a firstinput 184 a connected to receive the control output y, a second input184 b connected to receive an interim calculated control output, andspecifically, the output of the bias input device 170. The trackingcombiner 184 further includes an output 184 c connected to the trackinggain 186. The tracking combiner 184 is operable to subtract the interimcalculated control output at the second input 184 b from the controloutput y at the first input 184 a and provide the difference to theoutput 184 c. The tracking gain 186 is operable to multiple the outputreceived from the tracking combiner 184 by the inverse of the timeconstant of the integrator, given by Ts/Ti. The resulting value is thetracking circuit output value. The tracking gain 186 is operablyconnected to provide the tracking circuit output value to the trackinginput 144.

In general, the tracking circuit 104 as described above provides a valuethat when added to the error signal e or e_(i), is operable to cause theintegrating portion 112 to be in the proper state with respect to theerror signal, even when the error signal is otherwise effectivelyisolated from the control output y. To this end, the tracking combiner184 of the tracking circuit 104 subtracts a calculated control outputvalue derived from the integrator 112 from the isolated or held controloutput value. The result of the subtraction is used by the integratingportion 112 to stabilize, instead of merely incrementally accumulatingwith the non-zero error signal e_(i).

In particular, without the tracking circuit 104, the integrating portion112 would tend to progress to a maximum (or minimum) value when thecontroller 100 operates in the dead zone mode. In the dead zone mode,the control output y is effectively disconnected from the operation ofthe PID control module 102. As a consequence, the PID control module 102cannot operate to reduce the error signal e. Because e is not beingreduced, the integrating portion 112 would, in the absence of thetracking circuit 104, continue to integrate or accumulate the non-zeroerror signals over time. The integrating output value yi would in timearrive at the maximum (or minimum) value. That maximum (or minimum)value, however, does not represent the appropriate state of theintegrating portion 112 because it does not take into account that theerror signal is disconnected from the held control output value.

The tracking circuit 104 resolves this issue by providing the trackingvalue at the input 144, which tends to negate the effects of any steadystate error e on the output yi. Nevertheless, the tracking value doesallow for adjustment of the output yi of the integrating portion 112 inresponse to changes in error e. Thus, with the tracking circuit 104, theintegrating portion 112 can track to an appropriate state when thecontroller 100 is in the held mode or dead zone mode. It will beappreciated that the tracking circuit 104 further causes the integratingportion 112 to track to the proper state when the controller 100 is inthe override mode or disabled mode.

In accordance with another feature of the present invention, the filter106 is a device that receives information representative of the errorsignal and generates a hold control signal based thereon. In particular,as discussed further above, the filter 106 typically applies low passfiltering to the error signal e and then determines whether the filterederror signal is within a predetermined range of zero. While such afilter may take many forms, FIGS. 4 and 5 show two separate types offilters that may be used.

FIG. 4 shows a first exemplary filter 202 that may be used as the filter106 of FIG. 3. The filter 202 includes an error summation 204, a timeconstant multiplier 206, a lag filter 208, an absolute value block 210,a relay output block 212. In general, the first filter 202 receives theset point w and the process variable value x and provides as an output avalue from the relay output block 212. An output value of onecorresponds to a hold control signal, which causes dead zone operation.An output of zero corresponds to a non-hold control signal, which causesnormal mode operation.

Referring now to the specific structure and operation of the exemplaryfirst filter 202, the error summation 204 is operably coupled to receivethe set point w and the process variable value x. The error summation204 is operable to generate the error signal e from w and x and isoperably connected to provide the error signal e to the lag filter 208.The time constant multiplier 206 is operable to receive the value Ts, orsample time of the system, and a multiplier constant const1. The timeconstant multiplier 206 is operable to provide as an output the valueTs*const1, which represents the time constant of the filter. The timeconstant multiplier 206 is operably coupled to provide the filter timeconstant to the lag filter 208.

The lag filter 208 is also connected to receive the sample time valueTs. The lag filter 208 is a digital filter operable to provide afiltered version of the error signal e. To this end, the digital filtermay simply be a moving average filter.

In any event, the lag filter 208 is operable to provide the filterederror signal to the absolute value block 210. The absolute value block210 provides the absolute value of the filtered error signal to therelay output block 212. The relay output block 212 is further operableto receive an on-threshold value const2 and an off-threshold valueconst3, and is operable to generate an output of one or zero. Ingeneral, the relay output block 212 remains in its current output stateuntil the absolute value of the filtered error signal receives a valueexceeding the threshold value required for a state change.

In particular, if the output of the relay output block 212 is equal tozero, then the relay output block 212 continues to provide an output ofzero until the absolute value of the filtered error signal is less thanthe on-threshold value const2. As a consequence, if the controller 100is not currently in dead zone mode, then the filtered error signal mustbe within a range of zero defined by the on-threshold value const2.Similarly, if the output of the relay output block 212 is equal to one,then the relay output block 212 continues to provide an output of oneuntil the absolute value of the filtered error signal is greater thanthe off-threshold value const3. As a consequence, if the controller 100is currently in dead zone mode, then the absolute value of the filterederror signal must exceed the off-threshold value const3.

For example, if the on-threshold value is 0.1° C. and the off-thresholdvalue is 0.15°, then the output of the relay output block 212 willchange from zero to one only when the filtered error signal is within±0.1° of zero, and will change from one to zero only when the filterederror signal extends outside of the range of ±0.15° of zero. By usingseparate on and off thresholds, the filter 202 employs hysteresis toprevent frequent cycling of the filter 202 between its one and zerooutput.

The relay output block 212 is operable to provide the filter output tothe control input 174 c the sample and hold block 174 of the controller100. (See FIG. 3). If the filter output value is zero, then the sampleand hold block 174 allows the calculated control output value y3 to passthrough. If and when the filter output value changes to one, the sampleand hold block 174 stores the value of y3 at the time of the change andprovides the stored or held value thereafter until the filter outputvalue changes to zero.

FIG. 5 shows an alternative filter 302 that may be used as the filter106 from FIG. 3. The filter 302 is similar in many ways to the filter202 of FIG. 4, but includes additional features such as a time constantthat is tied to the time constant of the integrating portion 112 of thecontrol module 102 and an off-threshold that is tied to the set pointvalue w. Linking the filter time constant to the integrating portion 112of the control module 102 relates the general time base of the system,as defined in part by the time constant Ti of the integrating portion112, to the filter 302 that determines when to enter into dead zonemode. Linking the off-threshold to the set point w has the effect ofexpanding the amount of error that is tolerated in dead zone operationwhen the set point w reaches relatively high levels. Such effect isadvantageous in systems in which error in the high end is lessperceivable than error in the low end.

Referring specifically to FIG. 5, the filter 302 includes an errorsummation 304, a set point multiplier 306, a time constant limiter 308,a time constant multiplier 310, a lag filter 312, an absolute valueblock 314, an off-threshold summation 316, and a relay output block 318.In general, the filter 302 receives the set point w and the processvariable value x and provides as an output a value from the relay outputblock 318. An output value of one corresponds to the application of deadzone operation. An output of zero corresponds to the application ofnormal mode operation.

In particular, the error summation 304 is operably coupled to receivethe set point w and the process variable value x. The error summation304 is operable to generate the error signal e from w and x and isoperably connected to provide the error signal e to the lag filter 312.

The time constant limiter 308 is operable to receive the time constantTi of the integrating portion 112 of the controller 100 (see FIG. 3) aswell as a high limit value and a low limit value. The time constantlimiter 308 is operable to provide limited time constant to the timeconstant multiplier 310. To this end, the time constant limiter 308provides one of the following values as the limited time constant: thelow limit value if the received Ti value is less than the low limitvalue; the high limit value if the received Ti value is greater than thehigh limit value, and the received Ti value if the received Ti value isbetween the low limit value and the high limit value. Thus, the timeconstant limiter 308 effectively attempts to link to the time constantTi of the integrating portion 112 while observing high and low limits.

The time constant multiplier 310 is operable to receive the limited timeconstant and another constant, const3. The time constant multiplier 310is operable to provide as an output the product of the limited timeconstant and const3. That product represents the time constant of thefilter 302. The time constant multiplier 310 is operably coupled toprovide the filter time constant to the lag filter 312.

The lag filter 312 is also connected to receive the sample time valueTs. The lag filter 312 may suitably be the same as the lag filter 208.The lag filter 312 filters the received error signal in accordance withthe filter time constant. Such digital filters are well known in theart.

In any event, the lag filter 312 is operable to provide the filterederror signal to the absolute value block 314. The absolute value block314 provides the absolute value of the filtered error signal to therelay output block 318. The relay output block 318 is further operableto receive an on-threshold value and an off-threshold value, and isoperable to generate an output of one or zero. Like the relay outputblock 212 of FIG. 6, the relay output block 318 remains in its currentoutput state until the absolute value of the filtered error signalreceives a value exceeding the threshold value required for the statechange.

In particular, if the output of the relay output block 318 is equal tozero, then the relay output block 318 continues to provide an output ofzero until the absolute value of the filtered error signal is less thanthe on-threshold value. As a consequence, if the controller 100 is notcurrently in dead zone mode, then the filtered error signal must bewithin a range of zero defined by the on-threshold value. Similarly, ifthe output of the relay output block 318 is equal to one, then the relayoutput block 318 continues to provide an output of one until theabsolute value of the filtered error signal is greater than theoff-threshold value. As a consequence, if the controller 100 iscurrently in dead zone mode, then the absolute value of the filterederror signal must exceed the off-threshold value.

Similar to the filter 202 of FIG. 6, the on-threshold value may suitablybe a predefined constant, const5. However, unlike the filter 202, theoff-threshold value in the filter 302 is variable, and varies as afunction of the set point w. To this end, the set point multiplier 306is operably connected to receive the set point w, a multiply constant kmand a divide constant dm. The set point multiplier 306 is operable togenerate a set point adjust value which is equal to w*km/dm. The setpoint multiplier 306 is further operable to provide the set point adjustvalue to the on-threshold summation 316.

The on-threshold summation 316 is operable to add the set point adjustvalue to a minimum threshold constant const6 to generate theon-threshold value. The on-threshold summation 316 is operably coupledto provide the on-threshold value to the relay output block 318. As aconsequence, the on-threshold value is derived from the set point w, buthas an absolute minimum defined by const6.

The relay output block 318 may suitably be connected to provide thefilter output to the sample and hold block 174 of the controller 100. Insuch a case, if the filter output value is zero, then the sample andhold block 174 allows the calculated control output value y3 to passthrough. If and when the filter output value changes to one, the sampleand hold block 174 stores the value of y3 at the time of the change andprovides the stored or held value thereafter until the filter outputvalue changes to zero.

The above-described filters 202 and 302 provide non-limiting examples offilters that may be used to filter the error signal prior to determiningwhether the error signal is within the dead zone.

It will be appreciated that the above-described embodiments are merelyexemplary, and that those of ordinary skill in the art may readilydevise their own implementations and adaptations that incorporate theprinciples of the present invention and fall within the spirit and scopethereof.

1. A method of operating a control device having a set point value, anerror signal, and a control output signal, the error signalrepresentative of a difference between a process variable and the setpoint value, the control output signal operable to affect the processvariable, the method comprising: a) generating the control output signalbased at least in part on the error signal; b) filtering the errorsignal to generate a filtered error signal; and using the filtered errorsignal to determine whether a dead zone operation comprising generatingthe control output signal independent of the error signal should occur.2. The method of claim 1 wherein step c) further comprises holding thecontrol output signal as a held value independent of the error signalwhen the filtered error signal is within the dead zone.
 3. The method ofclaim 1 wherein step b) further comprises filtering the error signalwith a low pass filter.
 4. The method of claim 1 wherein step b) furthercomprises filtering the error signal with a low pass filter having atime constant that is based in part on a time constant of an integratingportion of the control device.
 5. The method of claim 1 wherein step b)further comprises filtering the error signal with a digital filter. 6.The method of claim 1 further comprising: d) resuming the generation ofthe control output signal based at least in part on the error signalwhen the filtered error signal passes outside of the dead zone.
 7. Themethod of claim 1 wherein step c) further comprises holding the controloutput signal at a held value independent of the error signal when thefiltered error signal falls below a first threshold, and furthercomprising step d) resuming the generation of the control output signalbase at least in part on the error signal when the filtered error signalexceeds a second threshold, the second threshold greater than the firstthreshold.
 8. The method of claim 7 wherein the second threshold isbased at least in part on the set point value.
 9. A control systemcomprising: an actuator having a first input, the actuator operable toeffect a process in response to the first input; and a controlleroperably coupled to receive a process variable and a set point value,the process variable representative of an output of the process, thecontroller further operably connected to provide a control output signalto the first input of the actuator, the controller operable to generatethe control output signal based at least in part on the error signal;filter the error signal to generate a filtered error signal; use thefiltered error signal to determine whether a dead zone operationcomprising generating the control output signal independent of the errorsignal should occur.
 10. The control system of claim 9 wherein thecontroller is further operable to hold the control output signal as aheld value independent of the error signal when the filtered errorsignal is within the dead zone.
 11. The control system of claim 9wherein the controller is further operable to filter the error signalwith a low pass filter.
 12. The control system of claim 9 wherein thecontroller is further operable to filter the error signal with a lowpass filter having a time constant that is based in part on a timeconstant of an integrating portion of the control device.
 13. Thecontrol system of claim 9 wherein the controller is further operable tofilter the error signal with a digital filter.
 14. The control system ofclaim 9 wherein the controller is further operable to resume thegeneration of the control output signal based at least in part on theerror signal when the filtered error signal passes outside of the deadzone.
 15. The control system of claim 9 wherein the controller isfurther operable to hold the control output signal at a held valueindependent of the error signal when the filtered error signal fallsbelow a first threshold, and to resume the generation of the controloutput signal base at least in part on the error signal when thefiltered error signal exceeds a second threshold, the second thresholdgreater than the first threshold.
 16. The control system of claim 15wherein the second threshold is based at least in part on the set pointvalue.